import { getRaceListApi, createRaceApi, updateRaceApi, deleteRaceApi } from '@/api/athlete'
import type { CompetitionRecord, CompetitionRecordListResponse } from './types'

/**
 * 获取运动员比赛信息列表
 * @param athleteId 运动员ID
 * @returns 比赛信息列表
 */
export const getAthleteRaceList = async (athleteId: string | number): Promise<CompetitionRecordListResponse> => {
	// 安全转换ID为数字（如果是字符串）
	const infoId = typeof athleteId === 'string' ? parseInt(athleteId, 10) : athleteId
	return await getRaceListApi(infoId)
}

/**
 * 创建运动员比赛信息记录
 * @param data 比赛信息数据
 * @returns 创建结果
 */
export const createAthleteRace = async (data: Partial<CompetitionRecord>) => {
	return await createRaceApi(data)
}

/**
 * 更新运动员比赛信息记录
 * @param id 记录ID
 * @param data 比赛信息数据
 * @returns 更新结果
 */
export const updateAthleteRace = async (id: string | number, data: Partial<CompetitionRecord>) => {
	const numericId = typeof id === 'string' ? parseInt(id, 10) : id
	return await updateRaceApi({
		...data,
		id: numericId
	})
}

/**
 * 删除运动员比赛信息记录
 * @param id 记录ID
 * @returns 删除结果
 */
export const deleteAthleteRace = async (id: string | number) => {
	return await deleteRaceApi(id)
}
